package com.lotusfall.config;
import com.lotusfall.vo.Student;
import org.springframework.context.annotation.*;

/**
 * @Configuration: 表示当前类作为配置文件使用，是用来配置容器的
 *                  位置：在类的上面，相当于beans.xml
 */
@Configuration
@PropertySource(value = "classpath:config.properties")
@ImportResource(value = "classpath:applicationContext.xml")
@ComponentScan(basePackages = "com.lotusfall.springboot.vo")
public class SpringConfig {

    /**
     * 创建方法，方法的返回值是对象，方法上面加@Bean
     * 方法的返回值对象就注入到容器中
     */

    /**
     * @Bean:把对象注入到spring容器中，作用相当于<bean>
     *     位置：方法上面
     *      @Bean 不指定对象的名称，默认是方法名。
     * @return
     */
    @Bean
    public Student createStudent(){
        Student student = new Student("张三", "男", 20);
        return student;
    }

    /**
     * 指定对象在容器中的名称,通过name属性指定对象的名称（id）
     */
    @Bean(name = "listStudent")
    public Student makeStudent(){
        Student student = new Student("张四", "男", 22);
        return student;
    }
}
